package com.itheima.springboot_02_configration.controller;

import com.itheima.springboot_02_configration.MyDataSource;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.core.env.Environment;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

//Rest模式
@RestController //这是一个restful风格的控制器
@RequestMapping("/books")
public class BookController {

    @Value("${country}") //这个country来自配置文件
    private String country1;

    @Value("${ggc.name}") //这是从配置文件中取属性的方法
    private String name1;

    @Value("${tempDir}")//这个字符串是在配置文件中被串联组合出来的 tempDir: ${baseDir}/tempDir  #别用引号包裹,否则转义字符将发生作用
    private String tempdir;

    @Autowired //这是自动装配注解,意思是把配置文件中的变量和值,加载到env变量身上
    private Environment env;

    //试图使用配置文件的片段构成的bean对象
    @Autowired //myDataSource表明了自己拿配置文件的哪一段,Autowired 是把全部数据丢过来
    private MyDataSource myDataSource;

    @GetMapping
    public String getById() {
        System.out.println("springboot is running...");
        System.out.println(country1);
        System.out.println(name1);
        System.out.println(tempdir);
        System.out.println(env.getProperty("country"));
        System.out.println(myDataSource);
        return "springboot is running...";
    }
}
